Error - COMException (0x86DB0898) when opening map file

Description

When a map is opened in Visio, an error is reported in the User Actions Required window.

11/11/2011 15:57:06
An exception occurred.
An error occurred in the VisEventProc event

=== Begin For Triaster Support ===
The following content may be useful to the Triaster support team.
Please copy and paste it into an e-mail to support@triaster.co.uk
and attach any referenced files if you would like help understanding
how to avoid this issue reoccurring.
An exception occurred.
An error occurred in the VisEventProc event

System.Runtime.InteropServices.COMException (0x86DB0898):

An exception occurred.
at Microsoft.Office.Interop.Visio.IVDocument.get_VBProject()
at Triaster.ProcessNavigator.Common.ProcessObjects.mdlMain.VBAVersion(Document docObj)
at Triaster.ProcessNavigator.Common.ProcessObjects.mdlMain.UpgradeVBA(Document docObj)
at Triaster.ProcessNavigator.Common.ProcessObjects.Map..ctor(Document& docObj, Boolean blnEnableUpgrade)
at Triaster.ProcessNavigator.Common.ProcessObjects.Maps.Add(Document docArg, Boolean blnEnableUpgrades, String strFullPathAndFileName)
at Triaster.ProcessNavigator.Common.ProcessObjects.Maps.Add(Document docArg, Boolean blnEnableUpgrades)
at Triaster.ProcessNavigator.Common.ProcessObjects.DocumentsBase.Add(Document docArg)
at Triaster.ProcessNavigator.MappingEdition.Wrapper.clsAppEventSink.HookDocument(Document docObj)
at Triaster.ProcessNavigator.MappingEdition.Wrapper.clsAppEventSink.VisEventProc(Int32& eventCode, Object& sourceObj, Int32& eventID, Int32& seqNum, Object& subjectObj, Object& moreInfo)
=== Finish For Triaster Support ===

Cause 1

There is a corruption in the VBA project that is embedded within the file.

Workaround:

Please contact Triaster Support (support@triaster.co.uk), who may ask that the file be forwarded for repair.

Cause 2:

Visual Basic for Applications (VBA) is not installed.

Resolution:

Visual Basic for Applications is usually installed with Microsoft Office products, including Visio, as a component of 'Office Shared Features'. However, it may not have been installed. It can be added to an existing installation.

  • Open Control Panel.
  • Click Programs and Features.
  • Right-click Microsoft Visio <Version> > Change.
  • Choose Add or Remove Features, and click Continue.
  • Expand Office Shared Features.
  • Click on the drop-down arrow next to Visual Basic for Applications, and choose Run from My Computer.
  • Visio 2013 Professional Installation dialog
  • Continue the installation.

Notes

A simple test is to:

  • Open a Visio drawing.
  • (A simple blank drawing could be created for this.)

  • Press ALT+F11.
  • That should open the 'Microsoft Visual Basic for Applications' window. If not, it would suggest that VBA (at least the required version) isn't installed.